﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Linq;

namespace Szabalyrendszer
{
    public class Cselekvo
    {
        public Csatater Csatater { get; set; }
        public List<HarciCsel> HarciCselek { get; set; }
        public string Karakternev { get; set; }
        public List<string> Ellenfelek { get; set; }
        public bool ManualisKockadobas { get; set; }

        public int KockaDobasKeres(int n, int k, int plusz)
        {
            if (ManualisKockadobas)
            {
                //UItol kell lekerni a dobast
                return 0;
            }
            else
            {
                return Kockadobo.Instancia.Dob(n, k, plusz);
            }
        }

        public int KockaDobasKeres(int n, int k)
        {
            return KockaDobasKeres(n, k, 0);
        }

        public int KockaDobasKeres(int k)
        {
            return KockaDobasKeres(1, k);
        }

        public void Cselekves(string celpontNev, params HarciCsel[] cselek)
        {
            Csatater.Cselekves(Karakternev, celpontNev, cselek.ToList());
        }

        public void Cselekves(string celpontNev,  HarciCsel csel)
        {
            Cselekves(celpontNev, new[] { csel });
        }

        public List<int> CselekIdoigenye()
        {
            return new List<int>();
        }

        public int KovetkezoCselIdoigenye()
        {
            return 5;
        }

        //Netan mozgas kesobb

        //public Tamadas Tamad(HarciCsel harciCsel, int tamadoDobas, int sebzes)
        //{
        //    //Fegyver.Sebzes.Ertek = sebzes;
        //    return new Tamadas
        //    {
        //        Te = tamadoDobas + this.Te,
        //        //Atutes = Fegyver.Atutes ? Modositok.OfType<HarcertekBonusz>().Sum(m => m.Atutes) :0,
        //        //Sebzesek = Fegyver.Sebzesek(),
        //        TulutesKuszob = TulutesKuszob,
        //        TalalatHelye = Kockadobo.Dob(10)
        //    };
        //}

        //public Tamadas Tamad(HarciCsel harciCsel)
        //{
        //    return Tamad(harciCsel, Kockadobo.Dob(1, 100, 0), Kockadobo.Dob(FegyverforgatoKar.Sebzes));
        //}

        //public Tamadas Tamad()
        //{
        //    return Tamad(HarciCsel.Tamadas);
        //}
    }
}
